home *** CD-ROM | disk | FTP | other *** search
/ Revista do CD-ROM 101 / CD-ROM 101.iso / compl / maya5ple / Install_MayaPLE5_English.exe / Maya / Data1.cab / AErigidConstraintTemplate.me < prev    next >
Encoding:
Text File  |  2003-07-17  |  5.9 KB  |  171 lines

  1. // Copyright (C) 1997-2002 Alias|Wavefront,
  2. // a division of Silicon Graphics Limited.
  3. //
  4. // The information in this file is provided for the exclusive use of the
  5. // licensees of Alias|Wavefront.  Such users have the right to use, modify,
  6. // and incorporate this code into other products for purposes authorized
  7. // by the Alias|Wavefront license agreement, without fee.
  8. //
  9. // ALIAS|WAVEFRONT DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
  10. // INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
  11. // EVENT SHALL ALIAS|WAVEFRONT BE LIABLE FOR ANY SPECIAL, INDIRECT OR
  12. // CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
  13. // DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
  14. // TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
  15. // PERFORMANCE OF THIS SOFTWARE.
  16. //
  17. //
  18. //    Alias|Wavefront Script File
  19. //
  20. //    Creation Date:    May 29, 1997
  21. //    Author:            ajp
  22. //
  23. //    Procedure Name:
  24. //    AErigidConstraintTemplate
  25. //
  26. //    Description Name;
  27. //    Creates the attribute editor controls for the rigidConstraint node
  28. //
  29. //    Input Value:
  30. //    nodeName
  31. //
  32. //    Output Value:
  33. //    None
  34. //
  35.  
  36. global proc AErigidConstraintTemplate( string $nodeName )
  37. {
  38.     
  39.     editorTemplate -suppress "rigidBody1";
  40.     editorTemplate -suppress "rigidBody2";
  41.     editorTemplate -suppress "worldVector";
  42.  
  43.     editorTemplate -beginScrollLayout;
  44.  
  45.     AEtransformMain $nodeName;
  46.     
  47.     editorTemplate -beginLayout "Rigid Constraint Attributes" -collapse false;
  48.         editorTemplate -addControl "constraintType" "constraintTypeControls";
  49.         editorTemplate -addControl "interpenetrate";
  50.         editorTemplate -addControl "initialPosition";
  51.         editorTemplate -addControl "initialOrientation";
  52.  
  53.         editorTemplate -addSeparator;
  54.  
  55.         editorTemplate -addControl "force";
  56.         editorTemplate -addControl "solverId";
  57.     editorTemplate -endLayout;
  58.  
  59.     editorTemplate -beginLayout "Spring Attributes";
  60.         editorTemplate -addControl "springStiffness";
  61.         editorTemplate -addControl "springDamping";
  62.         editorTemplate -addControl "springRestLength";
  63.     editorTemplate -endLayout;
  64.  
  65.     editorTemplate -beginLayout "Constraint Control";
  66.         editorTemplate -addControl "constrain";
  67.         editorTemplate -addControl "relativeTo" "relativeToControls";
  68.         editorTemplate -addControl "userDefinedPosition";
  69.     editorTemplate -endLayout;
  70.  
  71.     editorTemplate -suppress "translate";
  72.     editorTemplate -suppress "rotate";
  73.     editorTemplate -suppress "scale";
  74.     editorTemplate -suppress "shear";
  75.     editorTemplate -suppress "rotateOrder";
  76.     editorTemplate -suppress "rotateAxis";
  77.     editorTemplate -suppress "rotatePivot";
  78.     editorTemplate -suppress "rotatePivotTranslate";
  79.     editorTemplate -suppress "scalePivot";
  80.     editorTemplate -suppress "scalePivotTranslate";
  81.     editorTemplate -suppress "minTransLimit";
  82.     editorTemplate -suppress "maxTransLimit";
  83.     editorTemplate -suppress "minRotLimit";
  84.     editorTemplate -suppress "maxRotLimit";
  85.     editorTemplate -suppress "minScaleLimit";
  86.     editorTemplate -suppress "maxScaleLimit";
  87.     editorTemplate -suppress "geometry";
  88.     editorTemplate -suppress "selectHandle";
  89.     editorTemplate -suppress "displayHandle";
  90.     editorTemplate -suppress "displayRotatePivot";
  91.     editorTemplate -suppress "displayScalePivot";
  92.     editorTemplate -suppress "displayLocalAxis";
  93.     editorTemplate -suppress "dynamics";
  94.     editorTemplate -suppress "showManipDefault";
  95.  
  96.     // include/call base class/node attributes
  97.     AEdynBaseTemplate $nodeName;
  98.     AEdynObjectCommon $nodeName;
  99.     AEdynObjectInclude $nodeName;
  100.  
  101.     editorTemplate -addExtraControls;
  102.     editorTemplate -endScrollLayout;
  103.  
  104. }
  105.  
  106.  
  107. global proc relativeToControls( string $nodeName )
  108. {
  109.     string $attr = $nodeName + ".relativeTo";
  110.     int $type = `getAttr $attr`;
  111.  
  112.     if ($type == 3) 
  113.     {
  114.         // User Defined Position
  115.         editorTemplate -dimControl $nodeName "userDefinedPosition" false;
  116.     } 
  117.     else 
  118.     {
  119.         editorTemplate -dimControl $nodeName "userDefinedPosition" true;
  120.     }
  121. }
  122.  
  123.  
  124. global proc constraintTypeControls( string $nodeName )
  125. {
  126.     string $attr = $nodeName + ".constraintType";
  127.     int $type = `getAttr $attr`;
  128.  
  129.     if ($type == 1) {
  130.         // Pin
  131.         editorTemplate -dimControl $nodeName "interpenetrate" false;
  132.         editorTemplate -dimControl $nodeName "springStiffness" true;
  133.         editorTemplate -dimControl $nodeName "springDamping" true;
  134.         editorTemplate -dimControl $nodeName "springRestLength" true;
  135.         editorTemplate -dimControl $nodeName "initialPosition" false;
  136.         editorTemplate -dimControl $nodeName "initialOrientation" true;
  137.     } else if ($type == 2 || $type == 5) {
  138.         // 2 = Nail & 5 = Barrier
  139.         editorTemplate -dimControl $nodeName "interpenetrate" true;
  140.         editorTemplate -dimControl $nodeName "springStiffness" true;
  141.         editorTemplate -dimControl $nodeName "springDamping" true;
  142.         editorTemplate -dimControl $nodeName "springRestLength" true;
  143.         editorTemplate -dimControl $nodeName "initialPosition" false;
  144.  
  145.         if ( $type == 5 )
  146.         {
  147.             editorTemplate -dimControl $nodeName "initialOrientation" false;
  148.         }
  149.         else
  150.         {
  151.             editorTemplate -dimControl $nodeName "initialOrientation" true;
  152.         }
  153.     } else if ($type == 3 || $type == 4) {
  154.         // 3 = uniHinge & 4 = hinge
  155.         editorTemplate -dimControl $nodeName "interpenetrate" false;
  156.         editorTemplate -dimControl $nodeName "springStiffness" true;
  157.         editorTemplate -dimControl $nodeName "springDamping" true;
  158.         editorTemplate -dimControl $nodeName "springRestLength" true;
  159.         editorTemplate -dimControl $nodeName "initialPosition" false;
  160.         editorTemplate -dimControl $nodeName "initialOrientation" false;
  161.     } else if ($type == 6 || $type == 7) {
  162.         // spring & 7 = multi spring
  163.         editorTemplate -dimControl $nodeName "interpenetrate" false;
  164.         editorTemplate -dimControl $nodeName "springStiffness" false;
  165.         editorTemplate -dimControl $nodeName "springDamping" false;
  166.         editorTemplate -dimControl $nodeName "springRestLength" false;
  167.         editorTemplate -dimControl $nodeName "initialPosition" true;
  168.         editorTemplate -dimControl $nodeName "initialOrientation" true;
  169.     }
  170. }
  171.